package com.ruoyi.easyfame.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.easyfame.mapper.BankBaseInfoMapper;
import com.ruoyi.easyfame.domain.BankBaseInfo;
import com.ruoyi.easyfame.service.IBankBaseInfoService;

/**
 * 银行信息Service业务层处理
 * 
 * @author ruoyi
 * @date 2025-09-08
 */
@Service
public class BankBaseInfoServiceImpl implements IBankBaseInfoService 
{
    @Autowired
    private BankBaseInfoMapper bankBaseInfoMapper;

    /**
     * 查询银行信息
     * 
     * @param id 银行信息主键
     * @return 银行信息
     */
    @Override
    public BankBaseInfo selectBankBaseInfoById(Long id)
    {
        return bankBaseInfoMapper.selectBankBaseInfoById(id);
    }

    /**
     * 查询银行信息列表
     * 
     * @param bankBaseInfo 银行信息
     * @return 银行信息
     */
    @Override
    public List<BankBaseInfo> selectBankBaseInfoList(BankBaseInfo bankBaseInfo)
    {
        bankBaseInfo.setDeptId(SecurityUtils.getDeptId());
        return bankBaseInfoMapper.selectBankBaseInfoList(bankBaseInfo);
    }

    /**
     * 新增银行信息
     * 
     * @param bankBaseInfo 银行信息
     * @return 结果
     */
    @Override
    public int insertBankBaseInfo(BankBaseInfo bankBaseInfo)
    {
        bankBaseInfo.setDeptId(SecurityUtils.getDeptId());
        bankBaseInfo.setCreateTime(DateUtils.getNowDate());
        return bankBaseInfoMapper.insertBankBaseInfo(bankBaseInfo);
    }

    /**
     * 修改银行信息
     * 
     * @param bankBaseInfo 银行信息
     * @return 结果
     */
    @Override
    public int updateBankBaseInfo(BankBaseInfo bankBaseInfo)
    {
        bankBaseInfo.setUpdateTime(DateUtils.getNowDate());
        return bankBaseInfoMapper.updateBankBaseInfo(bankBaseInfo);
    }

    /**
     * 批量删除银行信息
     * 
     * @param ids 需要删除的银行信息主键
     * @return 结果
     */
    @Override
    public int deleteBankBaseInfoByIds(Long[] ids)
    {
        return bankBaseInfoMapper.deleteBankBaseInfoByIds(ids);
    }

    /**
     * 删除银行信息信息
     * 
     * @param id 银行信息主键
     * @return 结果
     */
    @Override
    public int deleteBankBaseInfoById(Long id)
    {
        return bankBaseInfoMapper.deleteBankBaseInfoById(id);
    }
}
